<?php
App::uses('Controller', 'Controller');

/**
 * Application Controller
 *
 * Add your application-wide methods in the class below, your controllers
 * will inherit them.
 *
 * @package		app.Controller
 * @link		http://book.cakephp.org/2.0/en/controllers.html#the-app-controller
 */

class AppController extends Controller {

	public $components = array('DebugKit.Toolbar', 'Session', 'Auth');

	public function beforeFilter() {

		$this->Session->write('Config.language', 'vi');
		$this->configureAuth();
	}

	private function configureAuth() {
		// nếu có prefix admin hoặc là AdminsControler
		if ($this->params['prefix'] == 'admin'|| $this->params['controller'] == 'admins') {

			$this->Auth->authenticate = array('Form' => array( // Form đăng nhập
				'userModel' => 'Admin', // sử dụng data từ Model Admin (bảng admins)
				'fields' => array(
					'username' => 'username', // username dùng cột username
					'password' => 'password', // password dùng cột password
				)
			));

			$this->Auth->loginAction = '/admins/login'; // URL trang login
			$this->Auth->loginError = __('auth.loginError'); // lỗi login sai
			$this->Auth->loginRedirect = '/admins'; // URL nếu đăng nhập thành công
			$this->Auth->logoutRedirect = '/admins/login'; // URL nếu đăng xuất thành công
			$this->Auth->authError = __('auth.authError'); // lỗi không có quyền truy cập
			$this->layout = 'admin'; // layout cho admin
		}
	}

}
